﻿using IQReportes.Models;
using IQReportes.Utils;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Web;

namespace IQReportes.ViewModels
{
    public class CambiarClaveViewModel
    {
        public int id { get; set; }

        [DisplayName("Usuario")]
        public string _usuario { get; set; }

        [DisplayName("Nombre")]
        [Required]
        [MaxLength(50, ErrorMessage = "El campo Nombre debe tener máximo 50 caracteres de longitud")]
        public string nombre { get; set; }

        [DisplayName("Email")]
        [Email]
        [MaxLength(40, ErrorMessage = "El campo Email debe tener máximo 40 caracteres de longitud")]
        [Required]
        public string email { get; set; }

        [DisplayName("Clave antigua")]
        [RangoLongitud(5, 10)]
        public string claveAntigua { get; set; }

        [DisplayName("Nueva clave")]
        [RangoLongitud(5, 10)]
        public string claveNueva { get; set; }

        [DisplayName("Repetir nueva clave")]
        [RangoLongitud(5, 10)]
        public string claveNuevaRepetida { get; set; }

        [DisplayName("Perfil")]
        public string nombrePerfil { get; set; }

        public int idPerfil { get; set; }

        public CambiarClaveViewModel() { }
        public CambiarClaveViewModel(Usuario u)
        {
            this.id = u.idUsuario;
            this._usuario = u.vcUsuario;
            this.nombre = u.vcNombre;
            this.email = u.vcEmail;
            this.claveAntigua = null;
            this.claveNueva = null;
            this.idPerfil = u.idPerfil;
            this.nombrePerfil = u.perfil.vcNombre;
        }
    }
}